'''
打印空心菱形
思路分析
先死后活
1.打印矩形
*****
*****
*****
*****
*****
*****
*****
*****
*****
2.打印半菱形【两个直角三角形】
*       1
**      2
***     3
****    4
*****   5
****    4
***     3
**      2
*       1
3.打印全菱形
    *           1   2*1-1   空格 4    5-1 ((9 // 2) + 1) - 1
   ***          3   2*2-1   空格 3    5-2 ((9 // 2) + 1) - 2
  *****         5   2*3-1   空格 2    5-3 ((9 // 2) + 1) - 3
 *******        7   2*4-1   空格 1    5-4 ((9 // 2) + 1) - 4
*********       9   2*5-1   空格 0    5-5 ((9 // 2) + 1) - 5
 *******        7   2*4-1   空格 1    5-4 ((9 // 2) + 1) - 4
  *****         5   2*3-1   空格 2    5-3 ((9 // 2) + 1) - 3
   ***          3   2*2-1   空格 3    5-2 ((9 // 2) + 1) - 2
    *           1   2*1-1   空格 4    5-1 ((9 // 2) + 1) - 1
4.打印空心菱形  【果然，熟能生巧，动手去做,才会一步一步的走向成功，所以去做就行了,别的就不说了】
    *
   * *
  *   *
 *     *
*       *
 *     *
  *   *
   * *
    *
'''

"""
换成while循环怎么做
思路
(1)把原来for循环的地方换成while就可以了
(2)以前使用的是range来表示 现在是直接定义初始化变量操作  逻辑是一样的
以前都是些一点变量就好了 
现在我是直接写呢 写的很顺畅
而且都不用思考 直接就写出来了
这就是编程经验
其实编程思想是最重要的
知识不知道可以积累 可以查找
但是 编程思想是需要好好的锻炼的
很幸运 我都拥有了
所以 加油
"""
total_level = 10
#循环外使用
i = 1


while i < total_level:
    #打印空格
    if i <= total_level//2:
        # for k in range(total_level // 2 + 1 - i):
        #     print(" " , end="")
        #每一行都要单独判断，所以要放在每一行 所以放在 i 的里面
        k1 = 0
        while k1 < total_level // 2 + 1 - i:
            print(" ", end="")
            k1 += 1
    else:
        # for k in range(total_level // 2 + 1 - (total_level - i)):
        #     print(" " , end="")
        k1 = 0
        while k1 < total_level // 2 + 1 - (total_level - i):
            print(" ", end="")
            k1+=1

    if i <= total_level // 2:
        # for j in range(2 * i - 1):
        #     # 如果是第一个和最后一个就打印*,其他的打印空格
        #     if j == 0 or j == 2 * i - 2:
        #         print("*", end="")
        #     else:
        #         print(" ", end="")
        #每一行都是从0开始计算的，不能放在最外面，放在最外面就是累计【为什么直接就知道，是因为我有编程经验】
        j = 0
        while j < 2 * i - 1:
            # 如果是第一个和最后一个就打印*,其他的打印空格
            if j == 0 or j == 2 * i - 2:
                print("*", end="")
            else:
                print(" ", end="")
            j+=1

    else:
        # for j in  range(2*(total_level-i)-1):
        #     if j == 0 or j == 2*(total_level-i)-2:
        #         print("*" , end="")
        #     else:
        #         print(" " , end="")

        j = 0
        while j < 2*(total_level-i)-1:
            if j == 0 or j == 2 * (total_level - i) - 2:
                print("*", end="")
            else:
                print(" ", end="")
            j+=1
    print("")
    #每次循环的时候都要递增
    i += 1


